Saltar al contenido >_
// blog / tags / Spring Boot

Etiqueta: #Spring Boot

← Volver al blog completo
Día 14: Cambiaste una clase y rompiste 10 más. Efecto dominó.
JavaSpring BootArchitecture100ArchitectureDays

Día 14: Cambiaste una clase y rompiste 10 más. Efecto dominó.

Alto acoplamiento, baja cohesión. Cambias un DTO y te explota medio sistema. Cómo separar modelos por capa para eliminar el efecto dominó. Día 14 de #100ArchitectureDays.

6 min read
Día 13: Tu clase tiene 50 métodos. Hace de todo. No hace nada bien.
JavaSpring BootArchitecture100ArchitectureDays

Día 13: Tu clase tiene 50 métodos. Hace de todo. No hace nada bien.

Ese OrderService, UserManager o PedidoController que todos tocan y nadie entiende es un God Object — y te está costando plata real. Cómo identificarlo y desarmarlo con SRP. Día 13 de #100ArchitectureDays.

8 min read
Día 12: 5.000 personas hicieron click al mismo tiempo. Tu servidor pidió perdón.
JavaSpring BootArchitecture100ArchitectureDays

Día 12: 5.000 personas hicieron click al mismo tiempo. Tu servidor pidió perdón.

Tu API no tiene límites. Cualquiera puede hacer las requests que quiera, a la velocidad que quiera. Rate limiting y el algoritmo Token Bucket. Día 12 de #100ArchitectureDays.

7 min read
Día 11: System.out.println en producción — la confesión que nadie hace
JavaSpring BootArchitecture100ArchitectureDays

Día 11: System.out.println en producción — la confesión que nadie hace

Tus logs son ruido puro. Sin timestamp, sin nivel, sin contexto. A las 3AM con producción caído, ese println no te va a salvar. Día 11 de #100ArchitectureDays.

6 min read
Día 10: Le pusiste índices a todo y ahora los INSERT tardan 800ms
JavaSpring BootArchitecture100ArchitectureDays

Día 10: Le pusiste índices a todo y ahora los INSERT tardan 800ms

Los índices no son gratis. Cada uno acelera una lectura pero frena todas las escrituras. Las 4 reglas para indexar sin romper tu base. Día 10 de #100ArchitectureDays.

8 min read
Día 9: Tu app funcionó todo el QA. El lunes a las 9am explotó con 100 usuarios.
JavaSpring BootArchitecture100ArchitectureDays

Día 9: Tu app funcionó todo el QA. El lunes a las 9am explotó con 100 usuarios.

Connection pools, leaks silenciosos y la matemática de por qué 9 conexiones pueden manejar miles de requests. Día 9 de #100ArchitectureDays.

7 min read
Día 8: El usuario subió un Excel y tu servidor pidió perdón
JavaSpring BootArchitecture100ArchitectureDays

Día 8: El usuario subió un Excel y tu servidor pidió perdón

HTTP no fue diseñado para operaciones de minutos. Batch processing, async patterns y cómo dejar de torturar a tus usuarios. Día 8 de #100ArchitectureDays.

7 min read
Día 7: ¿Quién te mandó a optimizar si ni siquiera mediste?
JavaSpring BootArchitecture100ArchitectureDays

Día 7: ¿Quién te mandó a optimizar si ni siquiera mediste?

Optimizás a ciegas porque nunca mediste. Profiling con Actuator y Micrometer para encontrar el cuello de botella real. Día 7 de #100ArchitectureDays.

7 min read
Día 6: Tu caché no funciona y es tu culpa
JavaSpring BootArchitecture100ArchitectureDays

Día 6: Tu caché no funciona y es tu culpa

Pusiste @Cacheable en todo y la app sigue lenta. El problema no es el caché — es lo que estás cacheando. Día 6 de #100ArchitectureDays.

6 min read
Día 5: N+1 Queries — el bug que tu DBA ya sabe que tenés
JavaSpring BootArchitecture100ArchitectureDays

Día 5: N+1 Queries — el bug que tu DBA ya sabe que tenés

Para mostrar 50 usuarios hacés 250 queries a la base de datos. Tu DBA te odia y tiene razón. Día 5 de #100ArchitectureDays.

6 min read
Día 4: Tu endpoint devuelve TODO. El frontend explota. La red llora.
JavaSpring BootArchitecture100ArchitectureDays

Día 4: Tu endpoint devuelve TODO. El frontend explota. La red llora.

Offset vs cursor pagination: cuándo usar cada una y por qué tu app necesita esto ya. Día 4 de #100ArchitectureDays.

6 min read
Día 3: Agregaste un índice y la consulta sigue lenta. El problema no era el índice.
JavaSpring BootArchitecture100ArchitectureDays

Día 3: Agregaste un índice y la consulta sigue lenta. El problema no era el índice.

EXPLAIN ANALYZE es tu mejor amigo. Aprende a leer un query plan antes de optimizar a ciegas. Día 3 de #100ArchitectureDays.

6 min read
Día 2: El SELECT * que arruinó tu API (y vos ni te enteraste)
JavaSpring BootArchitecture100ArchitectureDays

Día 2: El SELECT * que arruinó tu API (y vos ni te enteraste)

Tu API responde en 10 segundos porque estás trayendo columnas que nadie necesita. Día 2 de #100ArchitectureDays.

5 min read
#100ArchitectureDays: 110 problemas reales de arquitectura, con código, sin humo
ArchitectureSpring Boot100ArchitectureDays

#100ArchitectureDays: 110 problemas reales de arquitectura, con código, sin humo

Arranco un reto de 110 días donde resuelvo un problema real de arquitectura de software por día. Con Spring Boot, código que compila, y métricas reales.

4 min read
Día 1: Tu app tarda 11 segundos en arrancar y vos pensás que es normal
JavaSpring BootArchitecture100ArchitectureDays

Día 1: Tu app tarda 11 segundos en arrancar y vos pensás que es normal

De 10.7s a 1.3s de startup. El problema no es Spring Boot — es cómo inicializás tus servicios. Día 1 de #100ArchitectureDays.

5 min read
Spring Boot 4: lo que cambió, lo que se rompió y lo que nadie te cuenta
JavaSpring Boot

Spring Boot 4: lo que cambió, lo que se rompió y lo que nadie te cuenta

Llevo meses migrando proyectos a Boot 4. Esto es todo lo que aprendí — con las cicatrices para probarlo.

7 min read